/*
* Author: Chris Seguin
*
* This software has been developed under the copyleft
* rules of the GNU General Public License. Please
* consult the GNU General Public License for more
* details about use and distribution of this software.
*/
package org.acm.seguin.parser;
/*
* Generated By:JJTree: Do not edit this line. Node.java
*/
/*
* All AST nodes must implement this interface. It provides basic
* machinery for constructing the parent and child relationships
* between nodes.
*/
/**
* Description of the Interface
*
*@author Chris Seguin
*@created October 14, 1999
*/
public interface Node {
/**
* This method is called after the node has been made the current node. It
* indicates that child nodes can now be added to it.
*/
public void jjtOpen();
/**
* This method is called after all the child nodes have been added.
*/
public void jjtClose();
/**
* This pair of methods are used to inform the node of its parent.
*
*@param n Description of Parameter
*/
public void jjtSetParent(Node n);
/**
* Description of the Method
*
*@return Description of the Returned Value
*/
public Node jjtGetParent();
/**
* This method tells the node to add its argument to the node's list of
* children.
*
*@param n Description of Parameter
*@param i Description of Parameter
*/
public void jjtAddChild(Node n, int i);
public void jjtInsertChild(Node n, int i);
public void jjtDeleteChild(int i);
/**
* This method returns a child node. The children are numbered from zero,
* left to right.
*
*@param i Description of Parameter
*@return Description of the Returned Value
*/
public Node jjtGetChild(int i);
/**
* Return the number of children the node has.
*
*@return Description of the Returned Value
*/
public int jjtGetNumChildren();
/**
* Accept the visitor.
*
*@param visitor Description of Parameter
*@param data Description of Parameter
*@return Description of the Returned Value
*/
public Object jjtAccept(JavaParserVisitor visitor, Object data);
}